package de.fhkl.strokeserver.core;

import java.util.Date;
import java.util.UUID;

public class ActivityLog
{
	private UUID mRecordingId;
	private UUID mParamedicId;
	private Date mRecordingStarted;
	private Date mRecordingStopped;
	private Date mVideoTransmissionCompleted;
	
	private UUID mDoctorId;
	private Date mVideoAccepted;
	private Date mVideoStarted;
	private Date mVideoRated;
	private Boolean mRating;
	private Date mRatingAccepted;
	
	public Date getLatestActivity()
	{
		if (mRatingAccepted != null)
		{
			return mRatingAccepted;
		}
		
		if (mVideoRated != null)
		{
			return mVideoRated;
		}
		
		if (mVideoStarted != null)
		{
			return mVideoStarted;
		}
		
		if (mVideoAccepted != null)
		{
			return mVideoAccepted;
		}
		
		if (mVideoTransmissionCompleted != null)
		{
			return mVideoTransmissionCompleted;
		}
		
		if (mRecordingStopped != null)
		{
			return mRecordingStopped;
		}

		return mRecordingStarted;
	}
	
	public UUID getRecordingId()
	{
		return mRecordingId;
	}
	
	public void setRecordingId(UUID recordingId)
	{
		mRecordingId = recordingId;
	}
	
	public UUID getParamedicId()
	{
		return mParamedicId;
	}
	
	public void setParamedicId(UUID paramedicId)
	{
		mParamedicId = paramedicId;
	}
	
	public Date getRecordingStarted()
	{
		return mRecordingStarted;
	}
	
	public void setRecordingStarted(Date recordingStarted)
	{
		mRecordingStarted = recordingStarted;
	}
	
	public Date getRecordingStopped()
	{
		return mRecordingStopped;
	}
	
	public void setRecordingStopped(Date recordingStopped)
	{
		mRecordingStopped = recordingStopped;
	}
	
	public Date getVideoTransmissionCompleted()
	{
		return mVideoTransmissionCompleted;
	}
	
	public void setVideoTransmissionCompleted(Date videoTransmissionCompleted)
	{
		mVideoTransmissionCompleted = videoTransmissionCompleted;
	}
	
	public UUID getDoctorId()
	{
		return mDoctorId;
	}
	
	public void setDoctorId(UUID doctorId)
	{
		mDoctorId = doctorId;
	}
	
	public Date getVideoAccepted()
	{
		return mVideoAccepted;
	}
	
	public void setVideoAccepted(Date videoAccepted)
	{
		mVideoAccepted = videoAccepted;
	}
	
	public Date getVideoStarted()
	{
		return mVideoStarted;
	}

	public void setVideoStarted(Date videoStarted)
	{
		mVideoStarted = videoStarted;
	}

	public Date getVideoRated()
	{
		return mVideoRated;
	}
	
	public void setVideoRated(Date videoRated)
	{
		mVideoRated = videoRated;
	}
	
	public Boolean isRating()
	{
		return mRating;
	}
	
	public void setRating(Boolean rating)
	{
		mRating = rating;
	}

	public Date getRatingAccepted()
	{
		return mRatingAccepted;
	}

	public void setRatingAccepted(Date ratingAccepted)
	{
		mRatingAccepted = ratingAccepted;
	}
}
